package com.etc.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import com.etc.entity.Blog;
import com.etc.entity.BlogComnent;
import com.etc.entity.BlogName;

@Repository
public interface BlogMapper {

	/**
	 * 添加一个博客
	 * 
	 * @param record
	 * @return
	 */
	public int addBlog(Blog blog);

	/**
	 * 查询所有
	 * 
	 * @return
	 */
	public List<BlogName> selectAllBlog(@Param("start") Integer start, @Param("pagesize") Integer pagesize,
			@Param("content") String content);

	/**
	 * 根据博客id更改博客状态
	 * 
	 * @param bid
	 * @return
	 */
	public boolean updateByPrimaryKey(int bid);

	/**
	 * 记录数
	 * 
	 * @param content
	 * @return
	 */
	public int selectCount(@Param("content") String content);

	/**
	 * 异常博客审核通过
	 * 
	 * @param bid
	 * @return
	 */
	public boolean updateAudit(Integer bid);

	/**
	 * 查询建议
	 * 
	 * @return
	 */
	public List<BlogComnent> selectComment(Integer bid);

	/**
	 * 查询博客所有信息
	 * 
	 * @return
	 */
	public List<Blog> getAllBlog();

	/**
	 * <<<<<<< HEAD 分页
	 * 
	 * @param start
	 * @param pagesize
	 * @param content
	 * @return
	 */
	public List<Blog> selectAllBlogByPage(@Param("begin") Integer begin, @Param("sizeTopage") Integer sizeTopage,
			@Param("matter") String matter);

	/**
	 * 查询记录数
	 * 
	 * @param content
	 * @return
	 */
	public int selectCountByContent(@Param("matter") String matter);

	public List<BlogComnent> getBlogComnentById(int bid);

	/**
	 * 修改博客
	 * 
	 * @param blog
	 * @return
	 */
	public boolean updateBlog(Blog blog);

	/**
	 * 照片列表
	 * 
	 * @param start
	 * @param pagesize
	 * @param content
	 * @return
	 */
	public List<Blog> selectPhoto(@Param("start") Integer start, @Param("pagesize") Integer pagesize,
			@Param("content") String content);

	public boolean deleteByPrimaryKey(int bcid);
	/**
	 * 查询博客的总数
	 * @return
	 */
	public int getcount();

	public List<Blog> getBlogByPage(@Param("start")Integer start, @Param("limit")Integer limit);

	public List<Blog> getblogs();
}
